Vue.js | 您所在的位置:网站首页 › vue 二元表达式 › Vue.js |
插值
1、文本插值
(1)双向数据绑定 v-model="msg0101",一旦v-model中的数值发生变化,所有用vue表达式{{msg0101}}的数据都会更新。 (2)单次插值 v-model="msg0102",但是:如果我们仅仅需要显示msg0102初始化的值,则用{{#msg0102}}取值,这样,即便model中的数值发生变化,我们这里取出来的还是最原先的值。 (3)html文本的显示与转义 {{}}双大括号默认显示的是在data中定义的字符串,即便是html文本,也会原样输出。 例如,我们在data中定义了msgHtml:'helloworld',为了在页面中也显示的是html代码,我们只需要正常取值就ok:{{msgHtml}} 但是,如果我们要将我们的字符串文本在页面显示为正常的文档流,则用三大括号{{{msgHtml}}}输出,页面显示的就是helloworld。span标签已经显示在文档流中了
(4)html特性(双大括号标签也可以用在 HTML 特性 (Attributes) 内) 当前元素ID:item-{{item.itemId}} 。index:{{$index}}; itemName:{{item.itemName}}; itemDesc:{{item.itemDesc}}data:{ items: [{ itemId: "itemId01 ", itemName: "itemName01 ", itemDesc: "itemDesc01 " }, { itemId: "itemId02 ", itemName: "itemName02 ", itemDesc: "itemDesc02 " }, { itemId: "itemId03 ", itemName: "itemName03 ", itemDesc: "itemDesc03 " }, ] }
结果展示: 2、绑定表达式插值在 Vue.js 中,一段绑定表达式由一个简单的 JavaScript 表达式和可选的一个或多个过滤器构成。 (1)javascript表达式 二元表达式 在data中定义 data: { number01: 10, number02: "10", }{{number01+1}}渲染后:11(数值类型二元运算) {{number02+1}}渲染后:101(数值类型与字符串类型相加,先将数值类型转化为字符串,然后拼接字符串)
三元表达式 data中初始化四个数值 data: { ok01: true, ok02: false, ok03: "hello ", ok04: "", }div中的表达式判断 ok01 is true: {{ok01?"ok01":"cancel01"}} ok02 is false: {{ok02?"ok02":"cancel02"}} ok03 is "hello": {{ok03?"ok03":"cancel03"}} ok04 is "": {{ok04?"ok04":"cancel04"}} 注意:在三元表达式中{{isOk?"yes":"no"}}表达式相当于下面的条件判断 if(isOk){ //如果isOk是string类型,isOk未定义或者isOk是空字符串,则执行return "no",否则执行return "yes"。 //如果isOk是number类型,isOk未定义或者isOk的值为0,则执行return "no",否则执行return "yes"。 return "yes"; }else{ return "no"; }
使用js函数 在data中初始化数据msg01 data: { msg01: "this is message01" }在vue绑定的标签中写入 this is message01在表达式中倒序: {{msg01.split("").reverse().join("")}}
结果展示: this is message01在表达式中倒序: 10egassem si siht (2)过滤器 官方过滤器API:http://cn.vuejs.org/api/#过滤器 在data中定义数组fItems: fItems: [{ name: "《精通Spring》", price: "38.80" }, { name: "《精通Hibiernate》", price: "28.80" }, { name: "《精通Jquery》", price: "25.99" }, { name: "《精通Vue》", price: "18.88" }]
在vue绑定的标签内引用过滤器(lowercase:将所有字母变为小写,currency:指定货币符号) name: {{item.name|lowercase }}; price:{{item.price|currency "$"}}结果展示:
完整html代码如下: DOCTYPE html> 数据绑定 插值 #文本 双向数据绑定 {{msg0101}} 单次插值 {{*msg0102}} #原始html文本: 双大括号: {{msgHtml}}msg是什么就输出什么,不会转义 三大括号: {{{msgHtml}}}msg会发生转义" |
CopyRight 2018-2019 实验室设备网 版权所有 |